package cn.getech.data.development.model.vo;

import com.baomidou.mybatisplus.annotation.TableField;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.util.Date;
import java.util.List;

@Data
@ApiModel(value = "实时任务菜单搜索")
public class RealTimeTaskMenuVO implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty("记录id")
    private Integer id;

    @ApiModelProperty("父级菜单，根菜单id:0")
    private Integer parentId;

    @ApiModelProperty("项目id")
    private Integer procId;

    @ApiModelProperty("目录类型，0：根目录 1：文件夹 2：任务")
    private Integer menuType;

    @ApiModelProperty("任务类型，1：API 2：SQL 3：SQL_DAG")
    private Integer taskType;

    @TableField("目录名称")
    private String name;

    @TableField("目录级别")
    private Integer level;

    @TableField("子级数")
    private Integer subseries;

    @ApiModelProperty("描述")
    private String description;

    @ApiModelProperty("创建人id")
    private Integer createPer;

    @ApiModelProperty("创建人名称")
    private String createPerName;

    @ApiModelProperty("锁定状态，1：锁定，0：解锁")
    private Integer lockState;

    @ApiModelProperty("子节点")
    private List<RealTimeTaskMenuVO> childList;

    @ApiModelProperty("创建时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date createTime;

    @ApiModelProperty("最近修改时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date lastUpdateTime;
}
